f(X) → if(X, c, n__f(true))
if(true, X, Y) → X
if(false, X, Y) → activate(Y)
f(X) → n__f(X)
activate(n__f(X)) → f(X)
activate(X) → X
↳ QTRS
↳ DependencyPairsProof
f(X) → if(X, c, n__f(true))
if(true, X, Y) → X
if(false, X, Y) → activate(Y)
f(X) → n__f(X)
activate(n__f(X)) → f(X)
activate(X) → X
F(X) → IF(X, c, n__f(true))
ACTIVATE(n__f(X)) → F(X)
IF(false, X, Y) → ACTIVATE(Y)
f(X) → if(X, c, n__f(true))
if(true, X, Y) → X
if(false, X, Y) → activate(Y)
f(X) → n__f(X)
activate(n__f(X)) → f(X)
activate(X) → X
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
F(X) → IF(X, c, n__f(true))
ACTIVATE(n__f(X)) → F(X)
IF(false, X, Y) → ACTIVATE(Y)
f(X) → if(X, c, n__f(true))
if(true, X, Y) → X
if(false, X, Y) → activate(Y)
f(X) → n__f(X)
activate(n__f(X)) → f(X)
activate(X) → X
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
IF(false, X, Y) → ACTIVATE(Y)
Used ordering: Polynomial interpretation [25,35]:
F(X) → IF(X, c, n__f(true))
ACTIVATE(n__f(X)) → F(X)
The value of delta used in the strict ordering is 2.
POL(c) = 2
POL(n__f(x1)) = (2)x_1
POL(true) = 0
POL(false) = 2
POL(IF(x1, x2, x3)) = 2 + (2)x_1 + x_2 + (2)x_3
POL(ACTIVATE(x1)) = 4 + (2)x_1
POL(F(x1)) = 4 + (4)x_1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ DependencyGraphProof
F(X) → IF(X, c, n__f(true))
ACTIVATE(n__f(X)) → F(X)
f(X) → if(X, c, n__f(true))
if(true, X, Y) → X
if(false, X, Y) → activate(Y)
f(X) → n__f(X)
activate(n__f(X)) → f(X)
activate(X) → X